package model.semantics;

import model.State;

/**
 * Represents an abstract Node on the expression tree, which returns a value of
 * type T.
 * @author Sterling Dorminey
 *
 */
public abstract class Node<T> {
	/**
	 * Evaluates the node given the state parametrized by T.
	 */
	public abstract T evaluate(State<T> state);
}
